package com.ustcinfo.study.scala.r2.yangxinxin

import org.apache.spark.{SparkConf, SparkContext}
object spark_test{
      def main(args: Array[String]): Unit = {
            val sparkConf=new SparkConf().setMaster("local").setAppName("yangxinxin")       //创建SparkConf()并设置App名称
            val  sc=new SparkContext(sparkConf)                   //创建SparkContext，该对象是提交spark App的入口
            val txtRdd=sc.textFile("F:\\BigData\\spark-test\\src\\main\\scala")       //使用sc创建RDD并执行相应的transformation和action
            txtRdd.filter(x=>x.trim().length()>0)           //过滤空行
              .map(x=x.split(" "))                          //以空格拆分
              .flatMap(x=>x)
              .map(x=(x,1))
              .reduceByKey(_+_)                //按照key进行reduce，并将value进行累加
              .map(x=>(x._2,x._1))
              .sortByKey(false)
              .take(10)
              .foreach(println)
      }

}
